knitr::opts_chunk$set(echo = TRUE)

Preparativos

# Carga de paquetes 
library(dplyr)
library(sf)
library(DT)
library(plotly)
library(leaflet)
#  Registros de presencia de JUnco vulcani
junco_vulcani <-
  st_read(
    "https://raw.githubusercontent.com/gf0604-procesamientodatosgeograficos/2021i-datos/main/gbif/junco_vulcani-cr-registros.csv",
    options = c(
      "X_POSSIBLE_NAMES=decimalLongitude",
      "Y_POSSIBLE_NAMES=decimalLatitude"
    ),
    quiet = TRUE
  )

# Asignacion de CRS
st_crs(junco_vulcani) = 4326

# Capa geoespacil de cantones
# Carga de la capa de cantones
cantones <-
  st_read(
    "https://raw.githubusercontent.com/gf0604-procesamientodatosgeograficos/2021i-datos/main/ign/delimitacion-territorial-administrativa/cr_cantones_simp_wgs84.geojson",
    quiet = TRUE
  )
# Cruce espacial con la tabla de cantones, para obtener el nombre del cantón
junco_vulcani <- 
  junco_vulcani %>%
  st_join(cantones["canton"])


Introduccion

El junco de los paramos (Junco vulvani) habitan en zonas abiertas en elevaciones altas, usualmente por encima de los 3000 m. Suelen posarse sobre el suelo en pequeños arbustos, generalmente en parejas o en grupos pequeños, Su rango es muy limitado: sola en Costa Rica o en el oeste de Panama (eBird,Junco vulcani).


Tabla de registros de presencia

# Tabla de registros de presencia
junco_vulcani %>%
  st_drop_geometry() %>%
  select(stateProvince, canton, locality, eventDate) %>%
  datatable(
    colnames = c("Provincia", "Canton", "Localidad", "Fecha"),
    options = list(searchHighlight = TRUE)
  )


Graficos de estacionalidad

#grafico de estacionalidad por mes
junco_vulcani %>%
  st_drop_geometry() %>%
  group_by(mes = format(as.Date(eventDate, "%Y-%m-%d"), "%m")) %>%
  summarize(suma_registros = n()) %>%
  filter(!is.na(mes))  %>%
  plot_ly(x = ~ mes,
          y = ~ suma_registros,
          type = "scatter", 
          mode = "markers",
          fill = "tozeroy") %>%
  layout(title = "Estacionalidad",
         xaxis = list(title = "Mes"),
         yaxis = list(title = "Cantidad de registros"))


Grafico de historial

#grafico de historial por años
junco_vulcani %>%
  st_drop_geometry() %>%
  group_by(anio = format(as.Date(eventDate, "%Y-%m-%d"), "%Y")) %>%
  summarize(suma_registros = n()) %>%
  filter(!is.na(anio))  %>%
  filter(anio >= 2011) %>%
  plot_ly(x = ~ anio,
          y = ~ suma_registros,
          type = "bar") %>%
  layout(title = "Historial",
         xaxis = list(title = "Año"),
         yaxis = list(title = "Cantidad de registros"))

Mapa de distribucion